package com.ml.mall.entity.log;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 *
 * </p>
 *
 * @author kyyang
 * Created 2021-01-07
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("operation_log")
@ApiModel(value = "OperationLog对象", description = "")
public class OperationLog implements Serializable {


    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 功能模块
     */
    @ApiModelProperty(value = "功能模块")
    @TableField("oper_module")
    private String operModule;

    /**
     * 操作类型
     */
    @ApiModelProperty(value = "操作类型")
    @TableField("oper_type")
    private String operType;

    /**
     * 请求描述
     */
    @ApiModelProperty(value = "请求描述")
    @TableField("oper_desc")
    private String operDesc;

    /**
     * 请求参数
     */
    @ApiModelProperty(value = "请求参数")
    @TableField("oper_req_param")
    private String operReqParam;

    /**
     * 返回参数
     */
    @ApiModelProperty(value = "返回参数")
    @TableField("oper_res_param")
    private String operResParam;

    /**
     * 操作人
     */
    @ApiModelProperty(value = "操作人")
    @TableField("oper_user_id")
    private String operUserId;

    /**
     * 操作人名称
     */
    @ApiModelProperty(value = "操作人名称")
    @TableField("oper_user_name")
    private String operUserName;

    /**
     * 操作方法
     */
    @ApiModelProperty(value = "操作方法")
    @TableField("oper_method")
    private String operMethod;

    /**
     * 请求URI
     */
    @ApiModelProperty(value = "请求URI")
    @TableField("oper_uri")
    private String operUri;

    /**
     * 请求IP
     */
    @ApiModelProperty(value = "请求IP")
    @TableField("oper_ip")
    private String operIp;

    /**
     * 操作时间
     */
    @ApiModelProperty(value = "操作时间")
    @TableField("oper_create_time")
    private Date operCreateTime;

    /**
     * 操作版本号
     */
    @ApiModelProperty(value = "操作版本号")
    @TableField("oper_ver")
    private String operVer;


    /**
     * 角色ID
     */
    @TableField(value = "role_id")
    @ApiModelProperty(value="角色ID",example = "1")
    private Integer roleId;

    /**
     * 角色ID
     */
    @TableField(value = "role_type")
    @ApiModelProperty(value="角色类型：用于区分四种类型：1：管理员；2合作商 ；3：卖家；4买家",example = "1")
    private Integer roleType;


}
